<?php
/**
 * 系统全局配置包裹类，业务配置尽量放置在各自的配置目录中
 * 主要完成配置的加载以及请求初始化-结束资源回收
 * @since 2014-05-14
 * @author leicc<355108@nd.com>
 */
namespace classlib\core;
class config {
	/**
	 * 默认初始化之后记录请求时间，避免导出使用time调用
	 * @var integer
	 * @staticvar
	 */
	public static $nowtime= 0;
	
	/**
	 * 设置应用的目录资料信息
	 * @var string
	 * @staticvar
	 */
	public static $appdir = '';
	
	/**
	 * 默认处在生产环境下，可以设置调整成开发环境
	 * @return string
	 */
	public static function env() {
		$env = getenv(PROJECT);
		if (!$env) {
			$env = 'pro';
		}
		return $env;
	}

	/**
	 * 动态加载其他的配置
	 * @param  string  $sfilefix
	 * @param  boolean $global 是否加载全局的配置
	 * @return mix
	 */
	public static function load($filefix, $global=true) {
		static $conf = array();
		if (!isset($conf[$filefix])) {
			if (!$global) {
				$filefix= self::env().'/'.$filefix;
			}
			$sfile  = sprintf('%s/src/inc/%s.inc.php', COREDIR, $filefix);
			$conf[$filefix] = require $sfile;
		}
		return $conf[$filefix];
	}
}
